package com.ruoyi.swla2.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;

/**
 * 分区水平衡修正对象 dm_balance_fix
 *
 * @author gdqt
 * @date 2023-06-21
 */
public class BalanceFix extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 平台表单自增主键
     */
    private Long ID;

    /**
     * 租户ID
     */
    @Excel(name = "租户ID")
    private String tenantId;

    /**
     * 分区编号
     */
    @Excel(name = "分区编号")
    private String AreaID;

    /**
     * 账期 格式：2022-03
     */
    @Excel(name = "账期 格式：2022-03")
    private String paydate;

    /**
     * 自产供水量
     */
    @Excel(name = "自产供水量")
    private BigDecimal selfflow;

    /**
     * 外购供水量
     */
    @Excel(name = "外购供水量")
    private BigDecimal buyflow;

    /**
     * 供水总量-由上述两项水量组成
     */
    @Excel(name = "供水总量-由上述两项水量组成")
    private BigDecimal totalflow;

    /**
     * 计费计量用水量
     */
    @Excel(name = "计费计量用水量")
    private BigDecimal chargeflowJl;

    /**
     * 计费未计量用水量
     */
    @Excel(name = "计费未计量用水量")
    private BigDecimal chargeflowWjl;

    /**
     * 免费计量用水量
     */
    @Excel(name = "免费计量用水量")
    private BigDecimal freeflowJl;

    /**
     * 免费未计量用水量
     */
    @Excel(name = "免费未计量用水量")
    private BigDecimal freeflowWjl;

    /**
     * 注册用户用水量-由上述四项水量组成
     */
    @Excel(name = "注册用户用水量-由上述四项水量组成")
    private BigDecimal userflow;

    /**
     * 明漏水量
     */
    @Excel(name = "明漏水量")
    private BigDecimal mleakage;

    /**
     * 暗漏水量
     */
    @Excel(name = "暗漏水量")
    private BigDecimal aleakage;

    /**
     * 背景漏损水量
     */
    @Excel(name = "背景漏损水量")
    private BigDecimal backleakage;

    /**
     * 水箱、水池的渗漏和流溢水量
     */
    @Excel(name = "水箱、水池的渗漏和流溢水量")
    private BigDecimal sleakage;

    /**
     * 漏失水量-由上述四项漏失水量组成
     */
    @Excel(name = "漏失水量-由上述四项漏失水量组成")
    private BigDecimal totalleakage1;

    /**
     * 居民用户总分表差损失水量
     */
    @Excel(name = "居民用户总分表差损失水量")
    private BigDecimal jleakage;

    /**
     * 非居民用户表具误差损失水量
     */
    @Excel(name = "非居民用户表具误差损失水量")
    private BigDecimal fleakage;

    /**
     * 计量损失水量
     */
    @Excel(name = "计量损失水量")
    private BigDecimal cleakage;

    /**
     * 未注册用户用水和用户拒查等管理因素导致的损失水量
     */
    @Excel(name = "未注册用户用水和用户拒查等管理因素导致的损失水量")
    private BigDecimal wleakage;

    /**
     * 漏损水量-由上述四项漏损水量组成
     */
    @Excel(name = "漏损水量-由上述四项漏损水量组成")
    private BigDecimal totalleakage2;

    /**
     * 居民抄表到户水量
     */
    @Excel(name = "居民抄表到户水量")
    private BigDecimal homeuserFlow;

    /**
     * 最大冻土深度
     */
    @Excel(name = "最大冻土深度")
    private String depth;

    /**
     * 漏损率
     */
    @Excel(name = "漏损率")
    private BigDecimal lxl;

    /**
     * 漏失率
     */
    @Excel(name = "漏失率")
    private BigDecimal lsl;

    /**
     * 居民抄表到户水量修正值
     */
    @Excel(name = "居民抄表到户水量修正值")
    private String updateHomeuser;

    /**
     * 单位供水量管长修正值
     */
    @Excel(name = "单位供水量管长修正值")
    private String updateBusiness;

    /**
     * 年平均出厂压力修正值
     */
    @Excel(name = "年平均出厂压力修正值")
    private String updateYear;

    /**
     * 最大冻土深度修正值
     */
    @Excel(name = "最大冻土深度修正值")
    private String updateDepth;

    /**
     * 修正漏损率
     */
    @Excel(name = "修正漏损率")
    private BigDecimal updateLsl;

    /**
     * 水表误差
     */
    @Excel(name = "水表误差")
    private BigDecimal MeterError;

    /**
     * 表观漏损
     */
    @Excel(name = "表观漏损")
    private BigDecimal SurfaceLeakage;

    /**
     * 可控漏损
     */
    @Excel(name = "可控漏损")
    private BigDecimal ControlledLeakage;

    /**
     * 实际漏损
     */
    @Excel(name = "实际漏损")
    private BigDecimal ActualLeakage;

    /**
     * 未许可用水量
     */
    @Excel(name = "未许可用水量")
    private BigDecimal NotAllowFlow;

    public void setID(Long ID) {
        this.ID = ID;
    }

    public Long getID() {
        return ID;
    }

    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    public String getTenantId() {
        return tenantId;
    }

    public void setAreaID(String AreaID) {
        this.AreaID = AreaID;
    }

    public String getAreaID() {
        return AreaID;
    }

    public void setPaydate(String paydate) {
        this.paydate = paydate;
    }

    public String getPaydate() {
        return paydate;
    }

    public void setSelfflow(BigDecimal selfflow) {
        this.selfflow = selfflow;
    }

    public BigDecimal getSelfflow() {
        return selfflow;
    }

    public void setBuyflow(BigDecimal buyflow) {
        this.buyflow = buyflow;
    }

    public BigDecimal getBuyflow() {
        return buyflow;
    }

    public void setTotalflow(BigDecimal totalflow) {
        this.totalflow = totalflow;
    }

    public BigDecimal getTotalflow() {
        return totalflow;
    }

    public void setChargeflowJl(BigDecimal chargeflowJl) {
        this.chargeflowJl = chargeflowJl;
    }

    public BigDecimal getChargeflowJl() {
        return chargeflowJl;
    }

    public void setChargeflowWjl(BigDecimal chargeflowWjl) {
        this.chargeflowWjl = chargeflowWjl;
    }

    public BigDecimal getChargeflowWjl() {
        return chargeflowWjl;
    }

    public void setFreeflowJl(BigDecimal freeflowJl) {
        this.freeflowJl = freeflowJl;
    }

    public BigDecimal getFreeflowJl() {
        return freeflowJl;
    }

    public void setFreeflowWjl(BigDecimal freeflowWjl) {
        this.freeflowWjl = freeflowWjl;
    }

    public BigDecimal getFreeflowWjl() {
        return freeflowWjl;
    }

    public void setUserflow(BigDecimal userflow) {
        this.userflow = userflow;
    }

    public BigDecimal getUserflow() {
        return userflow;
    }

    public void setMleakage(BigDecimal mleakage) {
        this.mleakage = mleakage;
    }

    public BigDecimal getMleakage() {
        return mleakage;
    }

    public void setAleakage(BigDecimal aleakage) {
        this.aleakage = aleakage;
    }

    public BigDecimal getAleakage() {
        return aleakage;
    }

    public void setBackleakage(BigDecimal backleakage) {
        this.backleakage = backleakage;
    }

    public BigDecimal getBackleakage() {
        return backleakage;
    }

    public void setSleakage(BigDecimal sleakage) {
        this.sleakage = sleakage;
    }

    public BigDecimal getSleakage() {
        return sleakage;
    }

    public void setTotalleakage1(BigDecimal totalleakage1) {
        this.totalleakage1 = totalleakage1;
    }

    public BigDecimal getTotalleakage1() {
        return totalleakage1;
    }

    public void setJleakage(BigDecimal jleakage) {
        this.jleakage = jleakage;
    }

    public BigDecimal getJleakage() {
        return jleakage;
    }

    public void setFleakage(BigDecimal fleakage) {
        this.fleakage = fleakage;
    }

    public BigDecimal getFleakage() {
        return fleakage;
    }

    public void setCleakage(BigDecimal cleakage) {
        this.cleakage = cleakage;
    }

    public BigDecimal getCleakage() {
        return cleakage;
    }

    public void setWleakage(BigDecimal wleakage) {
        this.wleakage = wleakage;
    }

    public BigDecimal getWleakage() {
        return wleakage;
    }

    public void setTotalleakage2(BigDecimal totalleakage2) {
        this.totalleakage2 = totalleakage2;
    }

    public BigDecimal getTotalleakage2() {
        return totalleakage2;
    }

    public void setHomeuserFlow(BigDecimal homeuserFlow) {
        this.homeuserFlow = homeuserFlow;
    }

    public BigDecimal getHomeuserFlow() {
        return homeuserFlow;
    }

    public void setDepth(String depth) {
        this.depth = depth;
    }

    public String getDepth() {
        return depth;
    }

    public void setLxl(BigDecimal lxl) {
        this.lxl = lxl;
    }

    public BigDecimal getLxl() {
        return lxl;
    }

    public void setLsl(BigDecimal lsl) {
        this.lsl = lsl;
    }

    public BigDecimal getLsl() {
        return lsl;
    }

    public void setUpdateHomeuser(String updateHomeuser) {
        this.updateHomeuser = updateHomeuser;
    }

    public String getUpdateHomeuser() {
        return updateHomeuser;
    }

    public void setUpdateBusiness(String updateBusiness) {
        this.updateBusiness = updateBusiness;
    }

    public String getUpdateBusiness() {
        return updateBusiness;
    }

    public void setUpdateYear(String updateYear) {
        this.updateYear = updateYear;
    }

    public String getUpdateYear() {
        return updateYear;
    }

    public void setUpdateDepth(String updateDepth) {
        this.updateDepth = updateDepth;
    }

    public String getUpdateDepth() {
        return updateDepth;
    }

    public void setUpdateLsl(BigDecimal updateLsl) {
        this.updateLsl = updateLsl;
    }

    public BigDecimal getUpdateLsl() {
        return updateLsl;
    }

    public void setMeterError(BigDecimal MeterError) {
        this.MeterError = MeterError;
    }

    public BigDecimal getMeterError() {
        return MeterError;
    }

    public void setSurfaceLeakage(BigDecimal SurfaceLeakage) {
        this.SurfaceLeakage = SurfaceLeakage;
    }

    public BigDecimal getSurfaceLeakage() {
        return SurfaceLeakage;
    }

    public void setControlledLeakage(BigDecimal ControlledLeakage) {
        this.ControlledLeakage = ControlledLeakage;
    }

    public BigDecimal getControlledLeakage() {
        return ControlledLeakage;
    }

    public void setActualLeakage(BigDecimal ActualLeakage) {
        this.ActualLeakage = ActualLeakage;
    }

    public BigDecimal getActualLeakage() {
        return ActualLeakage;
    }

    public void setNotAllowFlow(BigDecimal NotAllowFlow) {
        this.NotAllowFlow = NotAllowFlow;
    }

    public BigDecimal getNotAllowFlow() {
        return NotAllowFlow;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("ID", getID())
                .append("tenantId", getTenantId())
                .append("AreaID", getAreaID())
                .append("paydate", getPaydate())
                .append("selfflow", getSelfflow())
                .append("buyflow", getBuyflow())
                .append("totalflow", getTotalflow())
                .append("chargeflowJl", getChargeflowJl())
                .append("chargeflowWjl", getChargeflowWjl())
                .append("freeflowJl", getFreeflowJl())
                .append("freeflowWjl", getFreeflowWjl())
                .append("userflow", getUserflow())
                .append("mleakage", getMleakage())
                .append("aleakage", getAleakage())
                .append("backleakage", getBackleakage())
                .append("sleakage", getSleakage())
                .append("totalleakage1", getTotalleakage1())
                .append("jleakage", getJleakage())
                .append("fleakage", getFleakage())
                .append("cleakage", getCleakage())
                .append("wleakage", getWleakage())
                .append("totalleakage2", getTotalleakage2())
                .append("homeuserFlow", getHomeuserFlow())
                .append("depth", getDepth())
                .append("lxl", getLxl())
                .append("lsl", getLsl())
                .append("updateHomeuser", getUpdateHomeuser())
                .append("updateBusiness", getUpdateBusiness())
                .append("updateYear", getUpdateYear())
                .append("updateDepth", getUpdateDepth())
                .append("updateLsl", getUpdateLsl())
                .append("MeterError", getMeterError())
                .append("SurfaceLeakage", getSurfaceLeakage())
                .append("ControlledLeakage", getControlledLeakage())
                .append("ActualLeakage", getActualLeakage())
                .append("NotAllowFlow", getNotAllowFlow())
                .toString();
    }
}
